<?php	

function conectarPlanes() {
        session_start();
        global $conexion;
        include 'configBbdd.php';
        if ($conexion = mysql_connect($server, $usuario , $pass))
        {
            mysql_set_charset('utf8');
            mysql_select_db($bbdd,$conexion);
            return $conexion;
        } else {
            return null;
        }
        
	//Seleccionar la BD a utilizar
	//or die (mysql_error());
}

function mostrarProximosPlanes($idProvincia) {
    $sql = "Select planes.idPlan, 
                   titular,
                   usuarios.fotoThumb,
                   usuarios.idUsuario,
                   usuarios.nombreArtistico,
                   usuarios.nombre as nombreUsuario, 
                   usuarios.apellidos,
                   usuarios.valoracionMedia,
                   CURDATE(),
                   (YEAR(CURDATE())-YEAR(usuarios.fechaNacimiento)) - (RIGHT(CURDATE(),5)<RIGHT(usuarios.fechaNacimiento,5)) AS edad,
                   planes.fecha, 
                   planes.hora, 
                   planes.plazas,
                   tipoPlan.descripcion as descripcionTipoPlan, 
                   tipoPlan.imagen as imagenTipoPlan,
                   subtipoPlan.descripcion as descripcionSubTipoPlan, 
                   provincias.nombre as nombreProvincia, 
                   municipios.nombre as nombreMunicipio, 
                   planes.comentarioPlan,
                   planes.descripcion,
                   planes.imagen 
            from planes
            inner join usuarios, 
                       municipios, 
                       provincias, 
                       tipoPlan, 
                       subtipoPlan
            where planes.idProvincia = ".$idProvincia.
                  " and planes.idUsuario = usuarios.idUsuario and
                  municipios.idMunicipio = planes.idMunicipio and
                  provincias.idProvincia = planes.idProvincia and
                  tipoPlan.idTipoPlan = planes.idTipoPlan and
                  usuarios.baja = 0 and
                  subtipoPlan.idSubtipoPlan = planes.idSubtipoPlan 
                  and planes.fecha > now()
                  ORDER BY planes.fecha DESC;";
    
    $result = mysql_query($sql, conectarPlanes()); 
    $i = 0;
    while ($ultimos = mysql_fetch_array($result))
    {
       $planes[$i] = $ultimos;
       $i++;
    } 
    return $planes;
}

function obtenerSubtiposPlan($idTipoPlan) {
    //función para cargar las select
     $sql = "SELECT idsubtipoPlan, descripcion FROM subtipoPlan WHERE idTipoPlan = ".$idTipoPlan;
     $result = mysql_query($sql,conectarPlanes()); 
    
     $subTipos[] = null;
    //Si existe al menos una fila
    while ($fila = mysql_fetch_array($result)) {
        $subTipos[$fila['idsubtipoPlan']] = $fila['descripcion'];
    }
    return $subTipos;
}

function obtenerTiposPlan() {
     $sql = "SELECT idtipoPlan,descripcion FROM tipoPlan";
     $result = mysql_query($sql,conectarPlanes()); 
    
     $tiposPlan[] = null;
    //Si existe al menos una fila
    while ($fila = mysql_fetch_array($result))
    {
        $tiposPlan[$fila['idtipoPlan']] = $fila['descripcion'];
    }
    return $tiposPlan;
}

function buscarPlan($idProvincia, $idMunicipio, $fecha, $hora, $idTipoPlan, $idSubtipoPlan, $idRol) {
    include '../logic/formatoFechas.php';
    $fecha = formatoFechaMysql($fecha);
    $sql = "Select distinct planes.idPlan, 
                   titular,
                   usuarios.idUsuario,
                   usuarios.fotoThumb,
                   usuarios.nombreArtistico,
                   usuarios.nombre as nombreUsuario, 
                   usuarios.apellidos, 
                   usuarios.valoracionMedia,
                   planes.fecha, 
                   planes.hora, 
                   planes.imagen,
                   planes.finalizado,
                   tipoPlan.descripcion as descripcionTipoPlan, 
                   tipoPlan.imagen as imagenTipoPlan,
                   subtipoPlan.descripcion as descripcionSubTipoPlan, 
                   provincias.nombre as nombreProvincia, 
                   municipios.nombre as nombreMunicipio, 
                   planes.comentarioPlan,
                   planes.plazas
            from planes
            inner join usuarios on planes.idUsuario = usuarios.idUsuario
            inner join municipios on municipios.idMunicipio = planes.idMunicipio
            inner join provincias on provincias.idProvincia = planes.idProvincia
            inner join tipoPlan on tipoPlan.idTipoPlan = planes.idTipoPlan
            left join ofertas on ofertas.idPlan = planes.idPlan 
            inner join subtipoPlan 
            where subtipoPlan.idSubtipoPlan = planes.idSubtipoPlan AND usuarios.baja = 0 ";
    
                  if ($idProvincia != 0) {
                      $sql .= " and planes.idProvincia = ".$idProvincia;
                  }
                  if ($idMunicipio != 0) {
                      $sql .= " and planes.idMunicipio = ".$idMunicipio;
                  }
                  if ($idTipoPlan != 0) {
                      $sql .= " and planes.idTipoPlan = ".$idTipoPlan;
                  }
                  if ($idSubtipoPlan != 0) {
                      $sql .= " and planes.idSubtipoPlan = ".$idSubtipoPlan;
                  }
                  if ($idRol != 0) {
                      $sql .= " and ofertas.idRol = ".$idRol." and ofertas.cerrada = 0 and ofertas.asignado = 0";
                  }
                  
                  //Añadir fecha
                  if ($fecha != "0000-00-00") {
                      $sql .= " and planes.fecha >= '".$fecha."'";
                  } 
                  $sql .= " ORDER BY fecha DESC";
                  $result = mysql_query($sql, conectarPlanes()); 
                  $i = 0;
                  while ($ultimos = mysql_fetch_array($result))
                  {
                     $planes[$i] = $ultimos;
                     $i++;
                  } 
                  return $planes;     
}

function obtenerPlan($idPlan) {
    $sql = "Select planes.idPlan,
                   planes.imagen,
                   planes.idTipoPlan,
                   planes.idSubtipoPlan,
                   planes.descripcion,
                   planes.finalizado,
                   planes.fecha, 
                   planes.hora, 
                   titular,
                   usuarios.nombreArtistico,
                   usuarios.idUsuario,
                   usuarios.nombre as nombreUsuario, 
                   usuarios.apellidos,
                   usuarios.fotoThumb,
                   usuarios.foto,
                   usuarios.idUsuario,
                   usuarios.valoracionMedia,
                   tipoPlan.descripcion as descripcionTipoPlan, 
                   tipoPlan.idtipoPlan,
                   subtipoPlan.descripcion as descripcionSubTipoPlan, 
                   subtipoPlan.idsubtipoPlan,
                   provincias.nombre as nombreProvincia, 
                   provincias.idProvincia,
                   municipios.nombre as nombreMunicipio, 
                   municipios.idMunicipio,
                   planes.comentarioPlan
            from planes
            inner join usuarios, 
                       municipios, 
                       provincias, 
                       tipoPlan, 
                       subtipoPlan
            where planes.idUsuario = usuarios.idUsuario and
                  municipios.idMunicipio = planes.idMunicipio and
                  provincias.idProvincia = planes.idProvincia and
                  tipoPlan.idTipoPlan = planes.idTipoPlan and
                  subtipoPlan.idSubtipoPlan = planes.idSubtipoPlan
                  and planes.idPlan = ".$idPlan;
    
                $result = mysql_query($sql, conectarPlanes()); 
                if ($plan = mysql_fetch_array($result)) {
                   return $plan;
                } else {
                    return null;
                }
    
}

function obtenerPlanModificar($idPlan){
    $sql = "SELECT * FROM planes WHERE idPlan = ".$idPlan;
    $result = mysql_query($sql, conectarPlanes()); 
    if ($plan = mysql_fetch_array($result)) {
       return $plan;
    } else {
        return null;
    }
}

//Devuelve si un usuario es dueño o no de un plan
function miPlan($idPlan,$idUsuario) {
    $sql = "SELECT * FROM planes WHERE planes.idPlan = ".$idPlan." and planes.idUsuario = ".$idUsuario;
    $result = mysql_query($sql, conectarPlanes()); 
    if ($mio = mysql_fetch_array($result)) {
       return true;
    } else {
       return false;
    }
}

function planesUsuario($idUsuario) {
    $sql = "Select planes.idPlan, 
                   titular,
                   planes.imagen,
                   usuarios.fotoThumb,
                   usuarios.idUsuario,
                   usuarios.nombre as nombreUsuario, 
                   usuarios.apellidos,
                   usuarios.valoracionMedia,
                   planes.fecha, 
                   planes.hora, 
                   planes.plazas,
                   planes.finalizado,
                   tipoPlan.descripcion as descripcionTipoPlan, 
                   tipoPlan.imagen as imagenTipoPlan,
                   subtipoPlan.descripcion as descripcionSubTipoPlan, 
                   provincias.nombre as nombreProvincia, 
                   municipios.nombre as nombreMunicipio, 
                   planes.comentarioPlan
            from planes
            inner join usuarios, 
                       municipios, 
                       provincias, 
                       tipoPlan, 
                       subtipoPlan
            where planes.idUsuario = ".$idUsuario.
                    " and planes.idProvincia = provincias.idProvincia".
                  " and planes.idUsuario = usuarios.idUsuario and
                      municipios.idMunicipio = planes.idMunicipio and
                  provincias.idProvincia = planes.idProvincia and
                  tipoPlan.idTipoPlan = planes.idTipoPlan and
                  subtipoPlan.idSubtipoPlan = planes.idSubtipoPlan
                  ORDER BY planes.fecha DESC;";
    
    $result = mysql_query($sql, conectarPlanes()); 
    $i = 0;
    while ($planes = mysql_fetch_array($result))
    {
       $misPlanes[$i] = $planes;
       $i++;
    } 
    return $misPlanes;
}


function proyectosParticipe($uid) {
    try {
        $sql = "select roles.descripcion as rol,
                        planes.idPlan, 
                        titular,
                        usuarios.foto,
                        usuarios.idUsuario,
                        usuarios.nombre as nombreUsuario, 
                        usuarios.apellidos,
                        usuarios.valoracionMedia,
                        planes.fecha, 
                        planes.hora, 
                        planes.plazas,
                        planes.imagen,
                        planes.finalizado,
                        tipoPlan.descripcion as descripcionTipoPlan, 
                        tipoPlan.imagen as imagenTipoPlan,
                        subtipoPlan.descripcion as descripcionSubTipoPlan, 
                        provincias.nombre as nombreProvincia, 
                        municipios.nombre as nombreMunicipio, 
                        planes.comentarioPlan 
                 from ofertas 
                 inner join roles on ofertas.idRol = roles.idRol
                 inner join planes on ofertas.idPlan = planes.idPlan
                 inner join usuarios on ofertas.idUsuarioCreador = usuarios.idUsuario
                 inner join provincias on planes.idProvincia = provincias.idProvincia
                 inner join tipoPlan on planes.idTipoPlan = tipoPlan.idtipoPlan
                 inner join subtipoPlan on planes.idSubtipoPlan = subtipoPlan.idsubtipoPlan
                 inner join municipios on planes.idMunicipio = municipios.idMunicipio
                 where ofertas.idUsuarioAsignado =".$uid." AND ofertas.idUsuarioCreador <> ".$uid.
                 " ORDER BY planes.fecha DESC";

         $result = mysql_query($sql, conectarPlanes()); 
         $i = 0;
         while ($planes = mysql_fetch_array($result))
         {
            $misPlanes[$i] = $planes;
            $i++;
         } 
         return $misPlanes;
    } catch (Exception $e) {
        echo $e;
    }
    
}


function insertarPlan($idUsuario, $titular, $descripcion, $provincia, $municipio, $tipo, $subtipo, $fecha){
    $sql = "INSERT INTO planes (idUsuario, titular, descripcion, idProvincia, idMunicipio, idTipoPlan, idSubtipoPlan, fecha)"
         . "VALUES (".$idUsuario.",'".$titular."','".$descripcion."',".$provincia.",".$municipio.",".$tipo.",".$subtipo.",'".$fecha."')";
    if (mysql_query($sql, conectarPlanes())){
        return true;
    } else {
        return false;
    }
}     

function modificarPlan($idPlan, $titular, $descripcion, $provincia, $municipio, $tipo, $subtipo, $fecha){
    $sql = "UPDATE planes SET"
         . " titular = '".$titular."'"
         . ", descripcion = '".$descripcion."'"
         . ", idProvincia = ".$provincia
         . ", idMunicipio = ".$municipio
         . ", idTipoPlan = ".$tipo
         . ", idSubtipoPlan = ".$subtipo
         . ", fecha = '".$fecha."'"
         . " WHERE idPlan = ".$idPlan;
    if (mysql_query($sql, conectarPlanes())){
        return true;
    } else {
        return false;
    }
}    

function eliminarPlan($idPlan){
    $sql = "DELETE FROM planes WHERE idPlan = ".$idPlan;
    if (mysql_query($sql, conectarPlanes())){
        return true;
    } else {
        return false;
    }
}

function aumentarOferta($pid){
    $sql = "UPDATE planes SET plazas=plazas+1 WHERE idPlan =".$pid;
    if (mysql_query($sql, conectarPlanes())){
        return true;
    } else {
        return false;
    }
}

function decrementarOferta($pid){
    $sql = "UPDATE planes SET plazas=plazas-1 WHERE idPlan =".$pid;
    if (mysql_query($sql, conectarPlanes())){
        return true;
    } else {
        return false;
    }
}

function obtenerMuro($pid) {
    try {
        $sql = "SELECT murosProyectos.idMuroProyecto,usuarios.idUsuario, usuarios.nombre, usuarios.apellidos, usuarios.foto, murosProyectos.comentario, murosProyectos.idPlan, fecha"
            . " FROM murosProyectos"
            . " INNER JOIN usuarios ON murosProyectos.idUsuario = usuarios.idUsuario"
            . " WHERE murosProyectos.idPlan = ".$pid." ORDER BY fecha DESC";
        $result = mysql_query($sql, conectarPlanes()); 
        $i = 0;
        while ($comentario = mysql_fetch_array($result))
        {
           $muro[$i] = $comentario;
           $i++;
        }
        return $muro;
    } catch (Exception $ex) {
        echo "error";
    }
}

 function insertarComentario($pid, $uid, $comentario) {
     try {
        
         //Insertamos el comentario en el muro del proyecto
         $sql = "INSERT INTO murosProyectos (idUsuario, idPlan, comentario) "
         . "VALUES (".$uid.",".$pid.",'".$comentario."')";
        
        
        if (mysql_query($sql, conectarPlanes())){
           return true;
        } else {
           return false;
        }
     } catch (Exception $ex) {
         echo 'error';
     }
 }
 
 function proyectosRegistrados() {
    try {
        $sql = "SELECT count(*) as total FROM planes";
        $result = mysql_query($sql, conectarPlanes());       

        if ($proyectos = mysql_fetch_array($result)) {
            return $proyectos;
        } else {
            echo "ERROR!";
        }
    } catch (Exception $ex) {
        echo "ERROR! ".$ex;
    }
}

 function proyectosFinalizados() {
    try {
        $sql = "SELECT count(*) as total FROM planes WHERE finalizado = 1";
        $result = mysql_query($sql, conectarPlanes());       

        if ($proyectos = mysql_fetch_array($result)) {
            return $proyectos['total'];
        } else {
            echo "ERROR!";
        }
    } catch (Exception $ex) {
        echo "ERROR! ".$ex;
    }
}

function proyectosComenzados() {
    try {
        $sql = "SELECT count(*) as total FROM planes WHERE fecha < now() AND finalizado = 0";
        $result = mysql_query($sql, conectarPlanes());       

        if ($proyectos = mysql_fetch_array($result)) {
            return $proyectos['total'];
        } else {
            echo "ERROR!";
        }
    } catch (Exception $ex) {
        echo "ERROR! ".$ex;
    }
}

function proyectosNoComenzados() {
    try {
        $sql = "SELECT count(*) as total FROM planes WHERE fecha > now() AND finalizado = 0";
        $result = mysql_query($sql, conectarPlanes());       

        if ($proyectos = mysql_fetch_array($result)) {
            return $proyectos['total'];
        } else {
            echo "ERROR!";
        }
    } catch (Exception $ex) {
        echo "ERROR! ".$ex;
    }
}

 function totalCine() {
    try {
        $sql = "SELECT count(*) as total FROM planes WHERE idTipoPlan = 1";
        $result = mysql_query($sql, conectarPlanes());       

        if ($proyectos = mysql_fetch_array($result)) {
            return $proyectos['total'];
        } else {
            echo "ERROR!";
        }
    } catch (Exception $ex) {
        echo "ERROR! ".$ex;
    }
}

 function totalEscena() {
    try {
        $sql = "SELECT count(*) as total FROM planes WHERE idTipoPlan = 2";
        $result = mysql_query($sql, conectarPlanes());       

        if ($proyectos = mysql_fetch_array($result)) {
            return $proyectos['total'];
        } else {
            echo "ERROR!";
        }
    } catch (Exception $ex) {
        echo "ERROR! ".$ex;
    }
}

function finalizarProyecto($pid){
    $sql = "UPDATE planes SET finalizado=1 WHERE idPlan =".$pid;
    if (mysql_query($sql, conectarPlanes())){
        return true;
    } else {
        return false;
    }
}



function cambiarImagenProyecto($pid, $imagen) {
    $sql="SELECT imagen FROM planes where idPlan = ".$pid;
    $result = mysql_query($sql, conectarPlanes());       
    $imagenOld = mysql_fetch_array($result);
    unlink("../".$imagenOld['imagen']);
    $sql = "UPDATE planes SET imagen = '".$imagen."' WHERE idPlan = ".$pid;
    if (mysql_query($sql, conectarPlanes())){
        return true;
    } else {
        return false;
    }
}

function esDelEquipo($uid, $pid) {
    try {
        $sql = "SELECT * 
                FROM planes
                INNER JOIN ofertas on ofertas.idPlan = planes.idPlan
                WHERE planes.idPlan = ".$pid." AND (ofertas.idUsuarioCreador = ".$uid." OR ofertas.idUsuarioAsignado = ".$uid.")";
        $result = mysql_query($sql, conectarPlanes()); 
        $i = 0;
        $pertenece = mysql_fetch_array($result);
        
        if ($pertenece) { 
            return true; 
        }
        else { 
            return false;
        }
        
    } catch (Exception $ex) {
        echo "ERROR: ".$ex;
    }

}